package io.renren.common.vo.input;

import lombok.Data;

import javax.validation.constraints.Future;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.Date;
import java.util.List;

/**
 * @author: xiaomi
 * @date: 2022/2/22
 * @description: StudyScheduleEntity 的更新/增加
 */
@Data
public class StudyScheduleIUVo {

    /**
     * 计划名称
     */
    private String name;
    /**
     * 计划类型（1-daily;2-weekly;3-monthly）
     */
    private Integer type;

    /**
     * 计划日期（2022-01-01）
     */
    //private String date;

    /**
     * 计划开始时间
     */
    @Future
    private Date startTime;
    /**
     * 计划结束时间
     */
    @Future
    private Date endTime;

    /**
     * 计划通知时间（08:20）
     */
    private String time;

    /**
     * 专题选择（级联，可以选择多个）
     */
    @NotEmpty(message = "专题不能为空！")
    private List<String> specialSubjects;

    @NotBlank(message = "专题标签路径不能为空！")
    private String allLabelPath;
    /**
     * 任务子项(可以自由编写)
     */
    @NotEmpty(message = "任务不能为空！")
    private List<TaskItemVo> taskItems;

    /**
     * 参考资料的ids
     */
    //@NotEmpty(message = "参考资料不能为空！")
    private List<Integer> refMaterialIds;

    /**
     * 其他学习资源备注
     */
    private String materialsRemark;

    /**
     * 本次计划主要解决的问题
     */
    @NotEmpty(message = "主要问题不能为空！")
    private String mainProblem;
}
